/**
 *  一句话思路：
    算法描述：
    解决所需数据结构+算法：
**/
#include<iostream>
#include<cstring>
using namespace std;
const int N = 22;

bool a[N][N][N];

int main() {
    memset(a, false, sizeof(a));
    int x, y, z, q, ans = 0;
    cin >> x >> y >> z >> q;
    while(q--) {
        int a1, a2, b1, b2, c1, c2;
        cin >> a1 >> b1 >> c1 >> a2 >> b2 >> c2;
        for(int i=a1; i<=a2; i++) {
            for(int j=b1; j<=b2; j++) {
                for(int k=c1; k<=c2; k++) {
                    a[i][j][k] = true;
                }
            }
        }
    }

    for(int i=1; i<=x; i++) {
        for(int j=1; j<=y; j++) {
            for(int k=1; k<=z; k++) {
                if(!a[i][j][k])
                    ans++;
            }
        }
    }

    cout << ans << endl;

    return 0;
}